Sophisticated features are increasingly being employed in consumer electronics products such as television receivers, satellite receivers, video cassette recorders (VCRs) and camcorders. While such features increase the consumer's satisfaction with the product, they tend to be complicated to use. Accordingly, so called "on-screen" display (OSD) systems are also increasingly being employed in consumer electronics products to display instruction, status and other information via a viewing screen to facilitate the use of the features. Often, the OSD system displays text menus which are sequentially accessed in a hierarchical manner to guide the consumer to utilize the features in a systematic way.
The data representing the text which is to be displayed is stored in a read-only memory (ROM) either incorporated within or external to a microprocessor used to control the operation of the consumer electronics product. Text data can utilize a large amount of memory, especially in the case of hierarchical menus. The size of a memory is directly related to its cost, and therefore it is important to limit the amount of text data that must be stored in order to keep the cost of the consumer electronics product as low as possible. It is also important to limit the amount of text data in order to maximize the amount of memory available for control functions and features.
Text data compression techniques are known for reducing the amount of text data which must be stored. For example, text data is usually stored in what is known as ASCII code or format, in which each text character is represented by a unique eight bit word or byte. Statistical coding techniques, such as Huffman coding, can be utilized so that less than eight bits can be used to represent the most common characters. This type of coding often results in a very high compression ratio (amount of compressed text/amount of raw text). However, the compressed text data is not easily recognizable for decompression (decoding) since it is no longer in an ASCII-like format (i.e., is no longer an eight-bit word).
Another compression technique involves the use of a dictionary of common words or phrases. Each entry of the dictionary is represented by a unique code word, for example, of eight bits corresponding to a non-ASCII word, and is used to replace the word or phrase in the ultimately stored text data.